#!/usr/bin/python
# -*- coding: utf-8 -*-

#$ -l h_rt=24:00:00
#$ -j y
#$ -o $HOME/autopatrol.out
#$ -N autopatrol

import sys
sys.path.append('/home/artem/pywikipedia')

def MonthName(m):
	if m == 1:
		return 'января'
	elif m == 2:
		return 'февраля'
	elif m == 3:
		return 'марта'
	elif m == 4:
		return 'апреля'
	elif m == 5:
		return 'мая'
	elif m == 6:
		return 'июня'
	elif m == 7:
		return 'июля'
	elif m == 8:
		return 'августа'
	elif m == 9:
		return 'сентября'
	elif m == 10:
		return 'октября'
	elif m == 11:
		return 'ноября'
	elif m == 12:
		return 'декабря'

def LastDay(m):
	if m == 1:
		return 31
	elif m == 2:
		return 29
	elif m == 3:
		return 31
	elif m == 4:
		return 30
	elif m == 5:
		return 31
	elif m == 6:
		return 30
	elif m == 7:
		return 31
	elif m == 8:
		return 31
	elif m == 9:
		return 30
	elif m == 10:
		return 31
	elif m == 11:
		return 30
	elif m == 12:
		return 31

def PatrolPage(site, token, page, revid=0):
	import query
	if page.exists():
		if revid == 0:
			revid = page.pageAPInfo()
		
		params = {'action': 'review', 'title': page.title(), 'token' : token, 'revid': revid, 'comment': 'автоматическое патрулирование ботом'}

		result = query.GetData(params, site)

		if 'error' in result: #error occured
			err = result['error']['code']
			wikipedia.output('%s' % result)

import urllib
import wikipedia
import catlib

site = wikipedia.getSite()
token = site.getToken()

for page in catlib.Category(site, u'Категория:Новости по источникам').subcategoriesList(False):
	wikipedia.output(page.title())
	PatrolPage(site, token, page)

#for y in range (2011,2012):
#	for m in range (3,13):
#		for d in range (1,LastDay(m)+1):
#			page = wikipedia.Page(site, u'Категория:' + str(d) + u' ' + MonthName(m).decode('utf8') + u' ' + str(y))

#			PatrolPage(site, token, page)
